Profile Maker 1.0 for MS Exchange |
---|
© 1997 Geek Software
Profile Maker solves the problem of creating new user profiles for multiple Exchange users. This, combined with Windows NT roaming user profiles, allows an administrator to easily create roaming Exchange profiles across all supported Exchange client operating system versions. Exchange profiles are entirely stored in each user's registry. Since each major version of Windows uses a different registry, an Exchange profile must be created for each operating system that might be used. Microsoft currently provides no supported utility to lighten the administrative load of managing roaming Exchange profiles.
Once Windows NT Server is configured for roaming user profiles, Exchange profiles will roam with each user. The difficulty is to initially configure the profiles for each user on each operating system. Of course users could create their own profiles, or the administrator could manually create profiles for each user, but that's just too hard.
A custom default profile configuration file for each user can be created by applying the Microsoft Exchange Setup Editor (which comes with Exchange Server) to the client network share. This creates a file called default.prf. This is where the defaults come from when you install the Exchange client. During installation of Exchange client this file gets copied to the Windows directory (and left behind). The default.prf is the same for all operating system clients.
Newprof.exe is an Microsoft utility which gets installed in the Exchange client directory when you install the client software. Newprof.exe can be run against a default.prf and this will automatically create an Exchange profile. Newprof.exe can be run against the custom default.prf when a user logs on, creating a new profile. This is how Profile Maker creates new profiles.
Profile Maker 1.0 requires two common DLLs, mfc40.dll and msvcrt40.dll . These two files must be located in the system directory of any computer which executes profmkr.exe. Future versions will not have this requirement. These files are very common, but in the event you do not have them, they are available for download.
Decompress the profmkr.zip into a temporary directory. Once the files have been placed in the appropriate locations, this directory can de deleted.
Place profmkr.exe, profmkr.def, and your default.prf in the same directory. This is preferably a read only network share. The "\netlogon" directory is an ideal location for these files. You can place them on each client computer if you desire. If you do so, you must make sure the local path name on each computer is the same, i.e.. c:\exchange\.
These three files may all be stored in different locations if you desire, but the example setup is the simplest. You will have to specify the path to the profmkr.def on the command line when calling profmkr.exe, even if they are in the same directory.
Make sure the clients are configured with the Exchange Server client software.
In order for Profile Maker to work for the Microsoft Exchange Server service, you must ensure the user's username is part of, or the same as, their Exchange mailbox name.
Make sure your network is set up for roaming user profiles and uses a logon script. The script.bat must be placed in all PDC/BDC "\netlogon" shares. Consult your Windows NT Server documentation for specifics. Here is a sample logon script:
@echo off net use h: /home \\server\netlogon\profmkr.exe \\server\netlogon\profmkr.def |
This script will attach the user's home directory share as the drive "h:", and call profmkr.exe from the network share "\netlogon". Home directories are automatically attached for Windows NT clients, so this line will cause "error 85", but it is required for Windows 95 clients and causes no harm otherwise.
Place the string %USERNAME% (capital letters required) anywhere in default.prf where you want to have the real username substituted. This will work with any service in the default.prf. There are several good ways to use this tool. Several examples follow.
If you want this result... | Enter this in default.prf... | |
---|---|---|
1. | MailboxName = username | MailboxName = %USERNAME% |
2. | MailboxName = username | MailboxName = %USERNAME% |
3. | PathToPersonalAddressBook = H:\users$\username\mailbox.pab | PathToPersonalAddressBook = H:\users$\%USERNAME%\mailbox.pab |
4. | PathToPersonalAddressBook = H:\mailbox.pst | PathToPersonalAddressBook = H:\mailbox.pst |
5. | PathToPersonalAddressBook = H:\username.pab | PathToPersonalAddressBook = H:\%USERNAME%.pab |
6. | PathToPersonalAddressBook = H:\users$\username\username.pab | PathToPersonalAddressBook = H:\users$\%USERNAME%\%USERNAME%.pab |
7. | ProfileName = username | ProfileName = %USERNAME% |
|
By modifying the exchuser.def, you can prevent existing user profiles from being replaced. A value of "username=0" or no entry at all in the appropriate section, tells profmkr.exe to create the profile specified in the default.prf. A value of "username=1" tells profmkr.exe that the user has already been configured and to skip it. Currently the Profile Maker recognizes two distinct operating systems and creates sections for "[Windows95]" and "[WindowsNT]", and all other operating systems come under the "[UnknownOS]" section. If you delete a username entry from one section of the file, a new profile will be created the next time the user logs on under that OS.
[Program Info] Name=Profile
Maker [Windows95] [WindowsNT] |
The default.prf key "OverwriteProfile=No" will prevent profiles (of the same name as specified in the default.prf) from being replaced, regardless of the entries in exchuser.def. This is a function of newprof.exe. We recommend always setting that key to "Yes" for a new mail system. For a system that has a number of users already set up and working (with the same profile name that is specified in default.prf) set this key to "No", thus eliminating the need to make a "username=1" entry for every user that you want to skip.
If new domain users first log on to a computer that has an Exchange profile already set as part of the default user profile, they will each have a copy of this Exchange profile by default. In this case, if you do not have "OverwriteProfile=Yes" set, they will not get configured by newprof.exe.
Now all you have to do is configure profmkr.def. This is actually a standard ".ini" file but we have chosen to avoid that name to keep the Windows NT registry clean. You can customize all paths including file names. You can also enable the newprof.exe user interface for testing purposes. This listing can be pasted into a text file to create a profmkr.def.
[Defaults] ; path (read access privileges)
containing default.prf |
You may chose to place the UserDatabase (exchuser.def) in each user's home directory to prevent unauthorized tampering. The user database path will accept the string %USERNAME%. Hiding the exchuser.def by setting "HideUserDatabase=1" may prevent users from seeing the user databaes file and inadvertently deleting it. The log file may also be placed in each user's home directory, but the path does not currently support the %USERNAME% string.
On a network that implements mandatory user profiles, newly created Exchange profiles are not saved in the user's registry at logoff. In order to make sure that a user has a profile, a new one must be created at each logon. In the current release of Profile Maker, the easiest way to automate new profile creation at each logon is to prevent creation of the the exchuser.def by setting the exchuser.def share or file permissions to read only. You can create a system that supports mandatory user profiles for one user group and not for another (thereby eliminating the overhead of always creating a new profile every time the later group logs on), by giving the later group write permissions to exchuser.def. In a future release, profmaker will support any mix of mandatory and customizable user profiles without any administrator intervention.
Logging allows the administrator to see a record of the actions taken. The log file may be placed in any directory. In the case that the profmkr.def file is not found, that error will be logged in %tmp%\profmkr.log. Profile Maker will append new entries to the log file until it reaches 64K in size, after which it will cease logging automatically. Logging can be turned off by setting LogFile=None in profmkr.def. Profmkr.exe with logging enabled will document events in the following manner.
Starting Profile Maker v1.0 16:56:17 02/04/97 Action -Read definition file \\server\netlogon\profmkr.def OS Version=WindowsNT Username=username Action -Set default profile=\\server\netlogon\default.prf Action -Set temp profile=c:\windows\temp\profile.tmp Action -Insert username Action -Calling c:\exchange\newprof.exe -p c:\windows\temp\profile.tmp Action -Update user database Exit -New profile created |
This Keyword... | Combines with this statement... | Remarks |
Starting | Profile Maker version# time date | Successful start of Profile Maker |
Action | Read definition file profmkr.def | Definitions file that is being used |
Got user SID | Only generated by Windows 95 logon | |
Set default profile=default.prf | Profile that is being used | |
Set temp profile=profile.tmp | (same name always used) | |
Insert username | %USERNAME% replacement in profile | |
Calling newprof.exe -p profile.tmp | Newprof.exe command line | |
Update user database | User database updated | |
Error | Unable to get username | Error code code |
Unable to open filename | Error code code | |
Unable to close filename | Error code code | |
default.prf is not a valid profile | Specified profile is invalid | |
Exit | No username | Check for accompanying error code |
User exists in database | User profile has been created before | |
File error | (no amplifying remarks) | |
New profile created | Successful completion of Profile Maker |
The "New profile created" entry does not guarantee successful completion of newprof.exe, just that it was launched. A failure of newprof.exe will not be logged. A failure of newprof.exe will occur if Exchange Client is not installed.
Serveral lines are entered in the log every time a user logs on, even if they already have a profile. For this reason, it is recommended to either preiodically clean out the log file or disable logging once you are satisified that your installation is fully functional.
The log file will not be protected from tampering if stored on a network share. It can be kept in each user's home directory, but only in the case where the home directory does not require %USERNAME% in its path. This capability will be added in future versions.
Profgen.exe is an unsupported utility that is available for download at http://www1.netlab.sk/msdownload/EXCHANGE.
We have found two versions of profgen.exe. The older one is 80,272 bytes and the newer one is 80,752 bytes (the version numbers are the same). The older one had a major flaw which made it unusable. It makes a working copy of default.prf (profgen.tmp) before it modifies the original default.prf. It then launches newprof.exe against profgen.tmp. In other words, it will never get the "MailboxName" key right. The newer one apparently fixed this problem and added a couple of features.
If you use profgen.exe, we expect that you will find Profile Maker substantially more powerful. The following list includes some of the drawbacks of profgen.exe as compared to Profile Maker.
Each user directory must be a network share so that the home directory can be attached as a root directory (or a fixed directory) because profgen.exe does not modify any paths, such as to the Personal Address Book. This requirement complicates NT user administration.
The administrator must give himself privileges on all user home directories in order to place a copy of the default.prf. In the case of cross platform support, up to three copies of this file must be placed in the home directory for each user.
Profgen.exe uses the local user's root directory as working space. You can delete the profgen.tmp yourself and specify that no log file be created, but there is no flexibility in the path. Using c:\ as working space is not the best idea; generally the %tmp% directory is used for that purpose.
Profgen only logs to the c:\ directory. Some people prefer to keep the log on a network share to ease administration, but this is not possible with profgen.exe.
A profgen.ini must be copied to each client computer unless you only need command line arguments. The file must contain the unique file name for the default.prf corresponding to the platform on which the profgen.ini resides. It appears to only be found if located in the Windows directory.
Profgen.exe must be called from the win.ini on Windows 95 clients. It is not designed to run from a logon script except on Windows NT. This requires a win.ini entry on each client computer that doesn't run Windows NT.
Profile Maker is shareware. You may distribute it only in its complete unmodified form. This means you must include all files and documentation [Profmkr.exe and ProfMkr.htm] when distributing. We request that you refer new users to our web site at Geek Software in order get the most recent version available.
You may evaluate Profile Maker for 14 days. After that time you must register or stop using it. This will give us the incentive to support you and improve this software. The cost is based on the maximum number of Exchange Server mailboxes on your system at any one time. You may use as many copies of Profile Maker on your site as are required. The cost is 10 cents per user mailbox, with a minimum charge of $20 (200 users).
You can register by clipping the following form and sending it to us with a check or money order. We will soon be offering registration via our web site, and eventually we will take online payment as well.
----------------------------------------------- cut
----------------------------------------------- Register by Mail Use the attached order form to register/order by mail. The only forms of payment currently accepted are by check for United States dollars drawn on a United States bank. The cost of processing a check drawn on an international bank is typically $25-30, which is prohibitively expensive. If you do send a check drawn on a U.S. bank, but from an international branch, make sure the check clearly states where a U.S. branch of that bank is located. Name _____________________________________________________________________ Address ___________________________________________________________________ City _____________________________ State _________ ZIP _______________________ Country (if not USA) _____________________ Phone ______________________________ Email Address ______________________________________________________________ $0.10 x ______ mailboxes = $ ______ (minimum charge $20) Make checks payable to "Geek Software" Please be sure to include an email address. This will allow us to provide information to you in a timely manner.
Where did you obtain this copy of Profile Maker? ___________________________________________________________________________ ___________________________________________________________________________ Any comments or suggestions about Profile Maker? ___________________________________________________________________________ ___________________________________________________________________________ ___________________________________________________________________________ Thank you for your comments! ----------------------------------------------- cut ----------------------------------------------- |
The information in this document is subject to change without notice and should not be construed as a commitment by Geek software. Geek assumes no responsibility for any errors that may appear in this document or related software. Windows, Windows 95, Windows NT and Exchange are trademarks of Microsoft Corporation.
If you would like us to implement a specific feature or just have a suggestion for improving Profile Maker, please let us know.
![]() |
Geek Software 2624 Algonquin Avenue Jacksonville, FL 32210 |
Mark Johnson C++ code |
mjohnson@mail.acilink.net http://shell.acilink.net/~mjohnson |
Eric Voskuil Concept and documentation |
voskuil@southeast.net http://users.southeast.net/~voskuil |
Geoff J. Wiener First test site |
geoffw@atcon.com |
If you agree to the terms of the license, click here to download the latest version of Profile Maker.